1. Field of the Invention
The present invention relates to an ATM cell buffer system of an ATM (Asynchronous Transfer Mode) network and its congestion control method, and more particularly to an ATM cell buffer system capable of restraining loss rate of ATM cells and its congestion control method.
2. Description of the Related Art
As the conventional congestion control method in an ATM network, there is a method of preventing congestion from progressing, by abandoning a new ATM cell entering during congestion, depending on the amount of buffer use and the loss level assigned in every connection.
Further, there is another congestion control method of preventing the influence on the ATM cell caused by the congestion in another connection, by simply defining the maximum number of stored cells in every connection.
As the other conventional congestion control method, the Japanese Patent Publication Laid-Open (Kokai) No. Heisei 10-023020 discloses a technique for making good use of system resources by abandoning the remaining cells thereafter when even one cell of a plurality of cells forming each packet is abandoned. The Japanese Patent Publication Laid-Open (Kokai) No. Heisei 10-303940 discloses a technique for passing only the cell belonging to one or a plurality of burst data specified at the arrival time of each head cell of each burst data and abandoning cells belonging to the other burst data, when a plurality of burst data toward the same output line flows into a switching system at the same time.
The above-mentioned conventional congestion control method has the following problems.
First, the method which abandons a new ATM cell entering during the congestion, depending on the amount of buffer use and the loss level assigned in very connection, has a problem that an ATM cell may be abandoned also in a connection other than the connection causing congestion because of the congestion in that connection.
Second, the method of preventing the influence on the ATM cell caused by the congestion of another connection by defining the maximum number of stored cells in every connection has a problem that no effective use of the ATM cell buffer is made because it is impossible to store cells of the maximum number of stored cells and more for every connection even if there is enough space for resources of the ATM cell buffer in a non-congested situation.
In order to solve the above problems, a first object of the present invention is to provide an ATM cell buffer system for realizing the low loss rate of ATM cells by restraining the influence on another connection in a congested state and its congestion control method.
A second object of the present invention is to provide an ATM cell buffer system capable of making good use of ATM cell buffer in a non-congested state and its congestion control method.
According to the first aspect of the invention, an ATM cell buffer system for buffering ATM cells in various network nodes forming an ATM network, comprises
congestion control means for controlling congestion of the ATM cells, and
control counter means for counting the number of ATM cells supplied from the ATM cell buffer, in every predetermined period, for every VC (Virtual Channel) queue, within the congestion control means,
the congestion control means deciding the count value of the control counter means as minimum output bandwidth for deciding the number of ATM cells to be stored in the next predetermined period, for every connection.
In the preferred construction, the control counter means comprises first counting means for counting the number of ATM cells supplied from the ATM cell buffer in the present predetermined period as a first count value, and second counting means for counting the number obtained by subtracting the number of ATM cells stored in the ATM cell buffer in the present predetermined period from the first count value in the previous predetermined period, as a second count value,
wherein the control counter means sets the first count value as the minimum output bandwidth, and decides whether the ATM cell is stored in the ATM cell buffer or abandoned, according to the second count value.
In another preferred construction, the congestion control means judges congestion of the ATM cell buffer by three types of non-congested state, low-congested state, and high-congested state for every VC queue,
in the case of the non-congested state, the congestion control means stores an ATM cell indifferently to the second count value of the control counter means,
in the case of the low-congested state, the congestion control means abandons an ATM cell only when there is a stored cell within a VC queue and an ATM cell is supplied beyond the minimum output bandwidth, and
in the case of the high-congested state, the congestion control means always abandons an ATM cell.
In another preferred construction, the congestion control means comprises congestion judging means for judging congestion of the ATM cell buffer by three types of the non-congested state, the low-congested state, and the high-congested state, for every VC queue, and stored cell counter means for counting the number of stored cells for every VC queue and notifying the presence of the stored cell just before storing an input ATM cell,
wherein judging whether an ATM cell is stored or abandoned, based on the judgement result from the congestion judging means and the notification from the stored cell counter means,
wherein the congestion control means judges whether an ATM cell is stored or abandoned, based on the judgment result from the congestion judging means and the notification from the stored cell counter means.
In another preferred construction, the control counter means has two areas; a first area for storing the first count value and a second area for storing the second count value as a storable count value, and
the congestion control means comprises switching control means for switching the first area and the second area in every predetermined period,
the area switching by the switching control means enabling the first count value to be passed to the second counting means.
In another preferred construction, the switching control means comprises a register for previously establishing a predetermined hour for switching the two areas, an internal counter for counting the predetermined hour established in the resister, and a logical circuit for creating an area switching signal when the value of the internal counter arrives at the predetermined hour.
In another preferred construction, the ATM cell buffer system further comprises output control means for controlling priority of VC queues of output ATM cells, based on an output request signal from the respective VC queues, according to the sequence of delay priority, while mediating between output rate control by shaping for every VC an output request from the respective VC queues, and selecting a VC queue,
the output control means performing shaping for guaranteeing bandwidth on an output request from a VC queue, as for connection between QOS (Quality of Service) classes with the guarantee of the bandwidth, and not performing shaping for guaranteeing bandwidth on an output request from a VC queue, as for a connection between the QOS classes with no guarantee of bandwidth.
According to the second aspect of the invention, a congestion control method in an ATM cell buffer system, provided with congestion control means for controlling congestion of an ATM cell, for buffering the ATM cells in various network nodes forming an ATM network, comprising
in the congestion control means,
a step of counting the number of ATM cells supplied from an ATM cell buffer, in every predetermined period, for every VC queue, and
a step of deciding the count value as minimum output bandwidth for deciding the number of ATM cells to be stored in the next predetermined period, for every connection.
In the preferred construction, the counting step includes a first counting step of counting the number of ATM cells supplied from the ATM cell buffer in the present predetermined period as a first count value, a second counting step of counting the number obtained by subtracting the number of ATM cells stored in the ATM cell buffer in the present predetermined period from the first count value in the previous predetermined period, as a second count value,
wherein setting the first count value as the minimum output bandwidth, and
deciding whether the ATM cell is stored in the ATM cell buffer or abandoned, according to the second count value.
In another preferred construction, a congestion control method further comprises a step of judging congestion of the ATM cell buffer by three types of non-congested state, low-congested state, and high-congested state, for every VC queue,
a step of storing an ATM cell indifferently to the second count value in the case of the non-congested state,
a step of abandoning an ATM cell only when there is a stored cell within a VC queue and an ATM cell is supplied beyond the minimum output bandwidth, in the case of the low-congested state, and
a step of always abandoning an ATM cell in the case of the high-congested state.
In another preferred construction, a congestion control method further comprises
a step of judging congestion of the ATM cell buffer by three types of the non-congested state, the low-congested state, and the high-congested state, for every VC queue,
a step of counting the number of stored cells for every VC queue and notifying the presence of the stored cell just before storing an input ATM cell, and
a step of judging whether an ATM cell is stored or abandoned, based on the judgment result of the congestion and notification of the presence of the stored cell.
In another preferred construction, a congestion control method further comprises
a step of controlling priority of VC queues of output ATM cells, based on an output request signal from the respective VC queues, according to the sequence of delay priority, while mediating between output rate control by shaping for every VC and output request from the respective VC queues, and selecting a VC queue,
a step of performing shaping for guaranteeing bandwidth on an output request from a VC queue, as for a connection between QOS classes with the guarantee of the bandwidth, and restricting the receipt of output requests, and
a step of performing no shaping for guaranteeing bandwidth on an output request from a VC queue, as for a connection between the QOS classes with no guarantee of the bandwidth.
According to another aspect of the invention, an ATM cell buffer system which buffers ATM cells in various network nodes forming an ATM network, comprises
congestion control unit which controls congestion of the ATM cells, and
control counter which counts the number of ATM cells supplied from an ATM cell buffer, in every predetermined period, for every VC queue, within the congestion control unit,
the congestion control unit deciding the count value of the control counter as minimum output bandwidth for deciding the number of ATM cells to be stored in the next predetermined period, for every connection.
Other objects, features and advantages of the present invention will become clear from the detailed description given herebelow.